home *** CD-ROM | disk | FTP | other *** search
-
- ▒▒▒▒▒▒▒▒▄ ▒▒▄ ▒▒▄ ▒▒▒▒▒▒▒▒▄
- ▀▀▀▀▀▒▒█ ▒▒█ ▒▒█ ▒▒█▀▀▀▒▒█
- ▒▒█ ▒▒█ ▒▒█ ▒▒█ ▒▒█
- ▒▒█ ▒▒█ ▒▒█ ▒▒▒▒▒▒▒▒█
- ▒▒▄ ▒▒█ ▒▒█ ▒▒█ ▒▒█▀▀▀▀▀▀
- ▒▒█ ▒▒█ ▒▒▄ ▒▒█▀ ▒▒█
- ▒▒▒▒▒▒█▀ ▒▒▒▒█▀ ▒▒█
- ▀▀▀▀▀▀ ▀▀▀▀ ▀▀
-
- ▒▒▒▒▒▒▒▒▄ ▒▒▄ ▒▒▄ ▒▒▄ ▒▒▄
- ▒▒█▀▀▀▀▀▀ ▒▒█ ▒▒█ ▒▒█ ▒▒█
- ▒▒▒▒▒▒▄ ▒▒▄▒▒▒▄ ▒▒▒▒▒▒▄ ▒▒█ ▒▒█ ▒▒▄ ▒▒█▀ ▒▒█
- ▒▒█▀▒▒█ ▒▒▒█▀▀▀ ▒▒█▀▒▒█ ▒▒▒▒▒▄ ▒▒█ ▒▒▒▒█▀ ▒▒█
- ▒▒█ ▒▒█ ▒▒█▀ ▒▒█ ▒▒█ ▒▒█▀▀▀ ▒▒█ ▒▒█▀▒▒▄ ▒▒█
- ▒▒█ ▒▒█ ▒▒█ ▒▒█ ▒▒█ ▒▒█ ▒▒█ ▒▒█▀ ▒▒▄ ▀▀
- ▒▒▒▒▒▒█ ▒▒█ ▒▒▒▒▒▒▒▄ ▒▒█ ▒▒█ ▒▒█ ▒▒█ ▒▒▄
- ▀▀▀▒▒█ ▀▀ ▀▀▀▀▀▀▀ ▀▀ ▀▀ ▀▀ ▀▀ ▀▀
- ▒▒▒▒▒▒█
- ▀▀▀▀▀▀
- P R E S E N T S
-
-
- █▀▀▀ █▀▀▀ █▀▀█ █ █ █▀▀▀ █▀▀█ █▀█ █▀▀▀ █
- █▀▀ █ ▀█ █▀▀█ █ █ █ ▀█ █▀▀█ █▀▀█ █ ▀█ █
- ▀▀▀▀ ▀▀▀▀ ▀ ▀ ▀▀ ▀▀▀▀ ▀ ▀ ▀ ▀▀▀▀ ▀▀▀▀ ▀
-
-
- EGAVGA.DOC
- ────────────
-
- Dieses Paket darf (und soll) frei kopiert und weitergegeben werden (denn Gutes
- muß nicht teuer sein), sofern die fünf Dateien EGAVGA.88, EGAVGA.286,
- EGAVGA.DOC, TEST6AH.COM und BGIPATCH.EXE unverändert darin enthalten sind.
-
- Eine Verwendung in kommerziellen Produkten unterliegt folgenden Bedingungen:
- - es ist der Hinweis "EGAVGA.BGI (C) 1991,92 by JVP graFIX!" in der Dokumen-
- tation enthalten.
- - die Software ist nicht kopiergeschützt in dem Sinne, daß DISKCOPY eine voll
- lauffähige Kopie erstellen kann.
- - die Software ist nicht durch Dongles oder ähnliche Hardwarevorrichtungen
- geschützt.
-
-
- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- !! Meines Wissens ist die Software ohne Fehler, !!
- !! dennoch für evtl. entstehende Schäden keine Haftung !!
- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-
-
- Vor Verwendung dieser Software sollte anhand der Handbücher von VGA-Karte und
- Monitor einwandfrei geklärt werden, ob der Einsatz des Hires-Modus #4 (s.u.)
- problemlos möglich ist.
-
-
- EGAVGA.BGI:
- ───────────
- ist ein SuperVGA-Videotreiber, der unter Zuhilfenahme des BGI Driver Toolkit
- [5] programmiert wurde und folgende Modi bietet:
-
- Modus #0: 0Eh 640 ∙ 200, 16 Farben (kompatibel zu Original EGAVGA.BGI)
- Modus #1: 10h 640 ∙ 350, 16 Farben (kompatibel zu Original EGAVGA.BGI)
- Modus #2: 12h 640 ∙ 480, 16 Farben (kompatibel zu Original EGAVGA.BGI)
- Modus #3: 0Fh 640 ∙ 350, monochrom (kompatibel zu Original EGAVGA.BGI)
- Modus #4: XXh bis 800 ∙ 600, 16 Farben (User-definierbar)
- Modus #5: 12h 720 ∙ 480, 16 Farben (erweiterter Videomodus 12h)
- Modus #6: 10h 720 ∙ 350, 16 Farben (erweiterter Videomodus 10h)
-
- Durch die Implementierung der Modi #0..#3 ist dieser Treiber aufwärts-
- kompatibel zum Original-EGAVGA.BGI und kann durch den gleichen Namen ohne grö-
- ßere "InstallUserDriver-Orgien" durch die in der Turbo Pascal Unit GRAPH.TPU
- enthaltene AutoDetect-Funktion installiert werden. Die Parameter des Modus #4
- lassen sich vom Benutzer mittels BGIPATCH.EXE frei bestimmen. Modus #5 stellt
- eine Erweiterung des Standard-VGA-Modus 12h dar, der durch Umprogrammierung
- des Horizontalzyklus eine Auflösung von 720∙480 Punkten bietet. Er sollte auf
- allen IBM-kompatiblen VGAs auch mit Standard-VGA-Monitor lauffähig sein [1].
- Der Modus #6 stellt eine analoge Erweiterung des EGA-Modus 10h dar. Er wurde
- implementiert, um nach dem Umstieg auf eine VGA-Karte speziell für Hercules
- geschriebene Software ohne Änderungen der Koordinaten weiterverwenden zu
- können (was bei guter Software, die nicht von absoluten, sondern von bzgl.
- GetMaxX und GetMaxY relativen Koordinaten ausgeht, nicht nötig wäre).
-
- Der Treiber wurde mit TASM V1.01 nach dem BGI-Standard V2.0 geschrieben, der
- z.B. von Turbo Pascal V5.0, V5.5 und V6.0 unterstützt wird.
-
- Da die mir bekannten Maustreiber (außer Logitech ab V5.0, die einige Modi von
- Tseng- und Trident-Karten unterstützen) die erweiterten Modi #4, #5 und #6
- nicht beherrschen [6], ist auch eine (mit BGIPATCH abschaltbare) Mauscursor-
- Emulation für diese Modi implementiert. Sie erlaubt außer den Funktionen 12
- (SetUserRoutine), 16 (Conditional Off) und 20 (SwapUserRoutine) alle üblichen
- (d.h. Funktionen 0..19) Operationen, also auch das Umdefinieren der
- Grafikcursorform ! Die Emulation ist zwar noch nicht ganz flimmerfrei, aber
- immer noch besser, als keine Maus zur Verfügung zu haben.
-
- Als Demo bietet sich natürlich Borlands BGIDEMO.PAS mit
-
- GraphDriver := VGA;
- GraphMode := 4; { für SuperVGAs, 5 oder 6 für Standard-VGAs }
- InitGraph( ... { aahhhh, oohhh, uiiiihhh ... }
-
- an (nach der Erzeugung durch BGIPATCH !).
-
-
- BGIPATCH.EXE:
- ─────────────
- Die Parameter des Modus #4 von EGAVGA.BGI lassen sich mit BGIPATCH.EXE verän-
- dern, um eine Zusammenarbeit mit möglichst vielen VGA-Karten zu gewährleisten.
-
- Dabei werden so unterschiedliche VGA-Karten wie Everex-, Video7-kompatible und
- VGA-Karten nach dem VESA-Standard [3] unterstützt.
-
- Diese Unterscheidung ist leider wegen verschiedener Techniken zum Einschalten
- der erweiterten VGA-Modi notwendig, so daß durch die Behandlung mit BGIPATCH
- ein individueller, nur für die jeweilige VGA-Kartenfamilie (Tseng-, Video7-,
- Paradise-Chips o.ä.) verwendbarer BGI-Treiber entsteht. Dieses Dilemma wird
- durch den neu definierten VESA-Standard [3, 4] umgangen, der für verschiedene
- SuperVGAs ein einheitliches Programmierinterface bietet, wodurch nicht mehr
- für jede Karte ein eigener Treiber notwendig ist.
-
- Für Karten, welche die 7-Bit-Modusnr. 6Ah für den Modus 800∙600∙16 [4] nach
- dem VESA-Standard unterstützen, ist bei der Frage nach der VGA-Art ein 'N'
- (normale VGA) einzugeben, nicht ein 'V' (VESA-kompatibel), da sich die
- VESA-Kompatibilität nur auf 15-Bit-Modusnummern bezieht und 7-Bit-Modusnummern
- über den normalen BIOS-Aufruf (AH=0, AL=ModusNr, INT 10h) gesetzt werden.
- Dieser Modus 6Ah ist im Treiber voreingestellt. Falls die VGA-Karte diesen
- Modus bietet, sollte er verwendet werden, da er markenunabhängig ist. Da in
- den VGA-Handbüchern nicht immer auf das Vorhandensein dieses Modus hingewiesen
- wird (z.B. bei meiner ESCOM TVGA mit Tseng ET4000 Chipsatz), kann mit
- TEST6AH.COM überprüft werden, ob der Modus trotzdem implementiert ist.
-
-
-
- Viel Spaß !
-
- -=≡ JVP graFIX! ≡=-
-
-
- Inhalt:
- ───────
- EGAVGA.88 erweiterter Treiber mit zusätzlichen Modi #4, #5
- für PCs mit 8086/8088-CPU
- EGAVGA.286 erweiterter Treiber mit zusätzlichen Modi #4, #5
- für PCs mit CPU aufwärtskompatibel zu 80186/V20/80286
- EGAVGA.DOC diese Datei
- BGIPATCH.EXE paßt EGAVGA.BGI an verschiedene VGA-Karten an,
- erzeugt aus EGAVGA.* EGAVGA.BGI
- TEST6AH.COM überprüft das Vorhandensein des VESA-Modus 6Ah
-
- Die Dateien sind in einem selbstentpackenden Archiv mit Yoshi's LHA V2.13
- zusammengefaßt, zusätzlich wurde BGIPATCH mit LZEXE V0.91 gepackt.
-
-
- Quellen/Programmierhilfen/Literatur:
- ────────────────────────────────────
- [1] Matthias Uphoff, "Die Programmierung der EGA/VGA Grafikkarte"
- (C) 1990 Addison-Wesley (Deutschland) GmbH
-
- [2] Jürgen Petsch, "Schnellfärberei", c't 8/9 1989
-
- [3] VESA Super VGA BIOS Extension Standard VS900602, 02.06.1990
-
- [4] VESA Standard 800x600 Mode VGA BIOS Interface VS890401-1, 09.04.1989
-
- [5] The BGI Driver Toolkit, (C) 1988, 89 Borland International,
- Revision 1, 15.05.1989
-
- [6] Programmierhandbuch für die MICROSOFT MOUSE, Microsoft Press
-
- [7] Programmer's Guide to the EGA and VGA Cards 2nd Edition, R. Ferraro,
- Addison-Wesley, 1990
-
- ──────────────────────────────────────────────────────────────────────────────
- Die verwendeten Bezeichnungen sind teilweise geschützte Warennamen ihrer
- jeweiligen Inhaber.